package com.ict.web.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ict.common.annotation.Excel;
import com.ict.web.domain.ProfessionalQualification;
import com.ict.web.domain.TechnicalTitle;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 专家信息和对应的该规则信息
 */


@Data
@AllArgsConstructor
@NoArgsConstructor
public class ExtractRuleBeginVo {
    /**
     * 专家id
     */
    @ApiModelProperty(value = "专家id")
    private Long expertId;

    /**
     * 专家姓名
     */
    @ApiModelProperty(value = "专家姓名")
    private String expertName;

    /**
     * 性别（0：男，1：女）
     */
    @ApiModelProperty(value = "性别（0：男，1：女）")
    private String sex;

    /**
     * 政治面貌
     */
    @ApiModelProperty(value = "政治面貌")
    private String politicalOutlook;

    /**
     * 年龄
     */
    @ApiModelProperty(value = "年龄")
    private String age;

    /**
     * 身份证号码
     */
    @ApiModelProperty(value = "身份证号码")
    private String idNumber;



    /**
     * 毕业学院
     */
    @ApiModelProperty(value = "毕业学院")
    private String graduateCollege;

    /**
     * 专业
     */
    @ApiModelProperty(value = "专业")
    private String major;

    /**
     * 学历
     */
    @ApiModelProperty(value = "学历")
    private String education;



    /**
     * 工作单位
     */
    @ApiModelProperty(value = "工作单位")
    private String workUnit;

    /**
     * 职务
     */
    @ApiModelProperty(value = "职务")
    private String post;

    /**
     * 擅长领域
     */
    @ApiModelProperty(value = "擅长领域")
    private String areasOfExpertise;



    /**
     * 技术职称名字
     */
    @ApiModelProperty(value = "技术职称名字")
    private String technicalTitlesName;

    /**
     * 职业资格名称
     */
    @ApiModelProperty(value = "职业资格名称")
    private String qualificationsName;
    /**
     * 技术职称
     */
    @ApiModelProperty(value = "技术职称")
    private List<TechnicalTitle> technicalTitles;

    /**
     * 职业资格
     */
    @ApiModelProperty(value = "职业资格")
    private List<ProfessionalQualification> qualifications;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime updateTime;


    /** 规则表id */
    @ApiModelProperty(value = "规则表id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long extractRuleId;


    /** 抽取类型{1:按条件抽取 2：随机抽取 3：指定专家} */
    @ApiModelProperty(value = "抽取类型{1:按条件抽取 2：随机抽取 3：指定专家}")
    private String extractType;

    /** 人数 */
    @ApiModelProperty(value = "人数，varchar：2")
    private Integer peopleNumber;

    /** 抽取规则描述 */
    @ApiModelProperty(value = "抽取规则描述，varchar：50")
    private String extractRuleDesc;


}
